#ifndef _CLASS_GPU_SHADER_H_
#define _CLASS_GPU_SHADER_H_

enum shader_type
{
	vertex_shader,
	fragment_shader
};

class CGShader
{
private:
	std::string m_szSource;
	GLhandleARB m_pShaderHandle;
	shader_type m_nType;

public:
	CGShader(shader_type type);
	~CGShader(void);
	bool Load(const std::string& pSource);
	bool LoadFromFile(const char* pFileName);
	bool CompileLink(GLhandleARB pProgramID);
	bool AttachObject(GLhandleARB pObjectID);
};

#endif